package com.codyy.felix.webconsole.plugins.route.core.pojo;

import java.util.List;

/**
 * @author : issac
 * create at:  2019-04-19  15:00
 * @description:
 */
public class RouteInfo {

    private String routeName;

    private String routeDesc;

    private String fromRoute;

    private List<String> desNames;

    public String getRouteName() {
        return routeName;
    }

    public void setRouteName(String routeName) {
        this.routeName = routeName;
    }

    public String getFromRoute() {
        return fromRoute;
    }

    public void setFromRoute(String fromRoute) {
        this.fromRoute = fromRoute;
    }

    public List<String> getDesNames() {
        return desNames;
    }

    public void setDesNames(List<String> desNames) {
        this.desNames = desNames;
    }

    public String getRouteDesc() {
        return routeDesc;
    }

    public void setRouteDesc(String routeDesc) {
        this.routeDesc = routeDesc;
    }

    public RouteInfo() {

    }

    public static class Builder {
        private String routeName;

        private String routeDesc;

        private String fromRoute;

        private List<String> desNames;

        public Builder routeName(String routeName) {
            this.routeName = routeName;
            return this;
        }
        public Builder routeDesc(String routeDesc) {
            this.routeDesc = routeDesc;
            return this;
        }
        public Builder fromRoute(String fromRoute) {
            this.fromRoute = fromRoute;
            return this;
        }

        public Builder desNames(List<String> desNames) {
            this.desNames = desNames;
            return this;
        }
        public RouteInfo build() {
            return new RouteInfo(this);
        }
    }

    private RouteInfo(Builder builder) {
        this.routeName = builder.routeName;
        this.routeDesc = builder.routeDesc;
        this.fromRoute = builder.fromRoute;
        this.desNames = builder.desNames;
    }

    @Override
    public String toString() {
        return "RouteInfo{" +
                "routeName='" + routeName + '\'' +
                ", routeDesc='" + routeDesc + '\'' +
                ", fromRoute='" + fromRoute + '\'' +
                ", desNames=" + desNames +
                '}';
    }
}
